class Solution {
    public int minOperations(int[] nums, int x) {
        int Sum=0;
        for(int a:nums) Sum+=a;
        int sum=0;
        int target = Sum-x;
        //处理细节
        if(target<0) {
            return -1;
        }
        int ret=-1;
        for(int left=0,right=0;right<nums.length;right++) {
            //进窗口
            sum+=nums[right];
            //判断
            while(sum>target) {
                //出窗口
                sum-=nums[left++];
            }
            //更新结果
            if(sum==target) {
                ret=Math.max(right-left+1,ret);
            }
        }
        return (ret==-1)?(-1):(nums.length-ret);
    }
}
